// 员工相关接口
import request from '@/utils/request'

/**
 * 获取员工简单列表
 * @returns
 */
export function getEmployeeSimple() {
  return request.get('/sys/user/simple')
}

/**
 * 获取员工列表
 * @param {*} page 页码
 * @param {*} size 每页条数
 * @returns
 */
export function getEmployeeList(page = 1, size = 10) {
  return request({
    method: 'get',
    url: '/sys/user',
    params: {
      page,
      size
    }
  })
}

/**
 * 删除员工
 * @param {*} id 员工id
 * @returns
 */
export function delEmployee(id) {
  return request.delete('/sys/user/' + id)
}

/**
 * 新增员工
 * @param {*} data
 * @returns
 */
export function addEmployee(data) {
  return request({
    method: 'post',
    url: '/sys/user',
    data
  })
}

/**
 * 批量导入员工
 * @param {*} data 数组, 每一项是对象, 和新增员工对象一样
 * @returns
 */
export function uploadEmployee(data) {
  return request({
    method: 'post',
    url: '/sys/user/batch',
    data
  })
}

/**
 * 获取用户的岗位信息
 * @param {*} id
 * @returns
 */
export function getJobDetail(id) {
  return request({
    url: `/employees/${id}/jobs`
  })
}

/**
 * 保存岗位信息
 * @param {*} data
 * @returns
 */
export function updateJob(data) {
  return request({
    url: `/employees/${data.userId}/jobs`,
    method: 'put',
    data
  })
}

/**
 * 给员工分配角色
 * @param {*} id 员工的id
 * @param {*} roleIds 角色列表
 */
export function assignRole(id, roleIds) {
  return request({
    method: 'put',
    url: '/sys/user/assignRoles',
    data: {
      id,
      roleIds
    }
  })
}
